export default {
  // Global page headers: https://go.nuxtjs.dev/config-head
  head: {},

  // Global CSS: https://go.nuxtjs.dev/config-css
  css: ["~/static/style/nuxt.css", "element-ui/lib/theme-chalk/index.css"],

  // Plugins to run before rendering page: https://go.nuxtjs.dev/config-plugins
  plugins: [
    { src: "@/plugins/element-ui", ssr: false },
    { src: "@/plugins/vant", ssr: true },
    { src: "@/plugins/Firebase.js", ssr: false },
    { src: "@/plugins/router-guard.js", ssr: false },
  ],
  router: {
    middleware: ["trailing-slash"],
  },
  serverMiddleware: ["~/serverMiddleware/validateBlogRoute.js"],
  // generate: {
  //   routes: function () {
  //     return axios.post("https://savingtik.com/js/a/api/cms/web/routerUrl", {
  //       condition: "WebTt",
  //     })
  //     .then((res) => {
  //       res.data.data=res.data.data.split(',')
  //       console.log(res)
  //       return res.data.data.map((blog) => {
  //         console.log(blog)
  //         if (typeof blog === "string" && blog.startsWith("/blog")) {
  //           return blog;
  //         } else {
  //           console.error('Invalid route detected and ignored:', blog);
  //           return ''; // 返回空字符串跳过无效路由
  //         }
  //       }).filter(route => route !== ''); // 过滤掉空字符串
  //     }).catch(error => {
  //       console.error('Error fetching routes:', error);
  //       return []; // 返回一个空数组，因为没有获取到有效的路由数据
  //     });
  //   },
  // },
  i18n: {
    locales: ["en", "zh"], // 支持的语言
    defaultLocale: "en", // 默认语言
    strategy: "no_prefix",
    vueI18n: {
      fallbackLocale: "en", // 如果用户的语言不存在，默认使用英语
      messages: {
        en: require("./locales/en.json"), // 英语文本
        zh: require("./locales/zh.json"), // 法语文本
      },
    },
  },
  // Auto import components: https://go.nuxtjs.dev/config-components
  components: true,

  // Modules for dev and build (recommended): https://go.nuxtjs.dev/config-modules
  buildModules: [],

  // Modules: https://go.nuxtjs.dev/config-modules
  modules: ["nuxt-i18n"],

  // Build Configuration: https://go.nuxtjs.dev/config-build
  build: {
    extractCSS: true,
    extend(config, { isClient, isDev, isModern, loaders: { vue } }) {
      // config.module.rules.push({
      //   test: /\.(ttf|eot|svg|woff(2)?)(\?[a-z0-9=&.]+)?$/,
      //   loader: "file-loader",
      //   exclude: /node_modules\/element-ui\/.*/,
      //   options: {
      //     name: "[name].[ext]",
      //     outputPath: "fonts/", // the target folder location
      //   },
      // });
    },
  },
  server: {
    host: "0.0.0.0", // 默认为 localhost，设置为 0.0.0.0 则表示接受任何来自公共网络的连接
    port: 3001, // 默认为 3000
  },
  env: {
    DES_KEY: process.env.DES_KEY,
    DES_IV: process.env.DES_IV,
    DES_CMS_KEY: process.env.DES_CMS_KEY,
    DES_CMS_IV: process.env.DES_CMS_IV,
  },
  vue: {
    config: {
      productionTip: false,
      silent: process.env.NODE_ENV === "production" ? true : false, // 启用时，Vue 将停止在控制台输出未捕获的错误或警告。
      errorHandler: (err, vm, info) => {
        if (process.env.NODE_ENV !== "production") console.error(err, info);
      },
      warnHandler: (msg, vm, trace) => {
        if (process.env.NODE_ENV !== "production") console.warn(msg, trace);
      },
    },
  },
};
